package com.tyk.bookstore.back.product.model.query;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;

/**
 * @author tyk
 * @description 书籍统计信息
 */
@Data
@Schema(name = "BookStatisticAddQuery", description = "书籍统计信息")
public class BookStatisticAddQuery implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    @Schema(description = "书籍")
    @NotNull
    @Min(value = 1)
    private Long bookId;

    @Schema(description = "收藏人数")
    @NotNull
    @Min(value = 1)
    private Long collectNum;

    @Schema(description = "支付人数")
    @NotNull
    @Min(value = 1)
    private Long payNum;

    @Schema(description = "评论人数")
    @NotNull
    @Min(value = 1)
    private Long commentNum;

    @Schema(description = "销量")
    @NotNull
    @Min(value = 1)
    private Long saleNum;

    @Schema(description = "点赞人数")
    @NotNull
    @Min(value = 1)
    private Long likeNum;

    @Schema(description = "价格(冗余)")
    @NotNull
    private BigDecimal price;

}
